package com.yuxin.wx.utils;

import com.yeepay.shade.org.apache.commons.lang3.StringUtils;
import info.monitorenter.cpdetector.io.*;
import org.apache.commons.io.IOUtils;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;

import java.io.*;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.nio.charset.Charset;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.zip.GZIPInputStream;

/**
 * @Description: 爬虫
 * @author zhangchuanqiang
 */
@Controller
@RequestMapping(value = "/ClientUtil")
public class ClientUtils {


	/**
	 * @Description: 链接到 url 并且获取 url 的相应
	 * @Author: zcq
	 * @Date: 2018/10/24 11:31 AM
	 */
	public static String get(String url, boolean zip, String charset) {
		BufferedReader in = null;
		try {
			URL realUrl = new URL(url);
			// 打开和URL之间的连接
			URLConnection connection = realUrl.openConnection();
			// 设置通用的请求属性
			connection.setRequestProperty("pragma", "no-cache");
			//connection.setRequestProperty("Content-Type", "text/html; charset=gbk");
			connection.setRequestProperty("accept-encoding", "gzip, deflate, br");
			connection.setRequestProperty("accept-language", "zh-CN,zh;q=0.8");
			connection.setRequestProperty("upgrade-insecure-requests", "1");
			connection.setRequestProperty("user-agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/5");
			connection.setRequestProperty("accept", "gzip, deflate, br");
			connection.setRequestProperty("cache-control", "no-cache");
			connection.setRequestProperty("connection", "keep-alive");
			connection.setConnectTimeout(5000);
			connection.setReadTimeout(5000);
			// 建立实际的连接
			connection.connect();
			// 定义 BufferedReader 输入流来读取 URL 的响应
			if (zip) {
				GZIPInputStream gzin = new GZIPInputStream(connection.getInputStream());
				in = new BufferedReader(new InputStreamReader(gzin, charset));
			} else {
				in = new BufferedReader(new InputStreamReader(connection.getInputStream(), charset));
			}

			StringBuffer sb = new StringBuffer();
			String line;
			while ((line = in.readLine()) != null) {
				sb.append(line);
			}
			return sb.toString();
		} catch (Exception e) {
			e.printStackTrace();
		}
		// 使用finally块来关闭输入流
		finally {
			try {
				if (in != null) {
					in.close();
				}
			} catch (Exception e2) {
				e2.printStackTrace();
			}
		}
		return null;
	}

	/**
	 * @Description: 获取网页的内容编码
	 * @Author: zcq
	 * @Date: 2018/10/24 11:32 AM
	 */
	public static String getEncodingByContentStream(String strUrl) {
		Charset charset = null;
		try {
			URLConnection urlConn = new URL(strUrl).openConnection();
			//打开链接,加上User-Agent,避免被拒绝(Web服务器可以根据此信息向不同客户端提供不同的页面)
			urlConn.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36");

			//解析页面内容
			CodepageDetectorProxy cdp = CodepageDetectorProxy.getInstance();
			// 依赖jar包 ：antlr.jar & chardet.jar
			cdp.add(JChardetFacade.getInstance());
			cdp.add(ASCIIDetector.getInstance());
			cdp.add(UnicodeDetector.getInstance());
			cdp.add(new ParsingDetector(false));
			cdp.add(new ByteOrderMarkDetector());

			InputStream in = urlConn.getInputStream();
			ByteArrayInputStream bais = new ByteArrayInputStream(IOUtils.toByteArray(in));
			// detectCodepage(InputStream in, int length) 只支持可以mark的InputStream
			charset = cdp.detectCodepage(bais, 2147483647);
		} catch (MalformedURLException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		return charset == null ? null : charset.name().toLowerCase();
	}

	/**
	 * @Description: 查询符合的固定电话
	 * @Author: zcq
	 * @Date: 2018/10/24 11:40 AM
	 */
	public static String checkTelephone(String str) {
		// 将给定的正则表达式编译到模式中
		Pattern pattern = Pattern.compile("(0\\d{2}-\\d{8}(-\\d{1,4})?)|(0\\d{3}-\\d{7,8}(-\\d{1,4})?)");
		// 创建匹配给定输入与此模式的匹配器。
		Matcher matcher = pattern.matcher(str);
		//查找字符串中是否有符合的子字符串
		while (matcher.find()) {
			//查找到符合的即输出
			/*System.out.println("查询到一个符合的固定号码："+matcher.group());*/
			return matcher.group();
		}
		return null;
	}

	/**
	 * @Description: 查询符合的手机号码
	 * @Author: zcq
	 * @Date: 2018/10/24 11:40 AM
	 */
	public static String checkCellphone(String str) {
		// 将给定的正则表达式编译到模式中
		Pattern pattern = Pattern.compile("((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(18[0,5-9]))\\d{8}");
		// 创建匹配给定输入与此模式的匹配器。
		Matcher matcher = pattern.matcher(str);
		//查找字符串中是否有符合的子字符串
		while (matcher.find()) {
			//查找到符合的即输出
			/*System.out.println("查询到一个符合的手机号码："+matcher.group());*/
			return matcher.group();
		}
		return null;
	}

	/**
	 * @param
	 * @return
	 * @description 过滤html所有标签样式以及js，只获取文本内容
	 * @author zpl
	 * @date 16:36 2018/8/30 0030
	 */
	public static String delHtmlTags(String htmlStr) {
		//定义script的正则表达式，去除js可以防止注入
		String scriptRegex = "<script[^>]*?>[\\s\\S]*?<\\/script>";
		//定义style的正则表达式，去除style样式，防止css代码过多时只截取到css样式代码
		String styleRegex = "<style[^>]*?>[\\s\\S]*?<\\/style>";
		//定义HTML标签的正则表达式，去除标签，只提取文字内容
		String htmlRegex = "<[^>]+>";
		//定义空格,回车,换行符,制表符
		String spaceRegex = "\\s*|\t|\r|\n";

		// 过滤script标签
		htmlStr = htmlStr.replaceAll(scriptRegex, "");
		// 过滤style标签
		htmlStr = htmlStr.replaceAll(styleRegex, "");
		// 过滤html标签
		htmlStr = htmlStr.replaceAll(htmlRegex, "");
		// 过滤空格等
		htmlStr = htmlStr.replaceAll(spaceRegex, "");
		// 返回文本字符串
		return htmlStr.trim();
	}

	/**
	 * @Description: 可以缓存的线程池，如果线程不超时，会灵活回收空闲的线程执行,如果超时则会创建新的线程执行任务
	 * @Author: zcq
	 * @Date: 2018/10/24 11:42 AM
	 */
//	@ResponseBody
//	@RequestMapping(value = "/pool")
//	public void pool() {
//		//可以缓存的线程池，如果线程不超时，会灵活回收空闲的线程执行
//		//如果超时则会创建新的线程执行任务
//		ExecutorService cached = Executors.newCachedThreadPool();
//		String keyWordArray = "信息系统项目管理师培训课程,信息系统项目管理师培训机构,信息系统项目管理师培训费用,项目经理资格认证pmp,项目经理证书pmp,项目经理pmp培训,项目经理pmp考试,项目经理pmp报考,项目经理pmp,项目管理资格认证pmp,项目管理专业人士pmp,项目管理专家pmp认证,项目管理专家pmp,项目管理证书pmp要求,项目管理证书pmp,项目管理与pmp认证,项目管理师与pmp,项目管理师培训机构,项目管理师培训,项目管理师考试,项目管理师报名,项目管理师报考,项目管理师pmp认证,项目管理师pmp培训,项目管理师pmp考试报名,项目管理师pmp考试,项目管理师pmp,项目管理师pmp,项目管理认证师pmp考试,项目管理认证pmp,项目管理培训师,项目管理培训pmp,项目管理课程pmp,项目管理考试pmp,项目管理考pmp,项目管理经理pmp,项目管理工程师pmp,项目管理pmp资料,项目管理pmp证书,项目管理pmp认证证书,项目管理pmp认证考试,项目管理pmp认证,项目管理pmp培训深圳,项目管理pmp培训课程,项目管理pmp培训价格,项目管理pmp培训机构,项目管理pmp培训费用,项目管理pmp培训班,项目管理pmp培训,项目管理pmp课程,项目管理pmp考试时间,项目管理pmp考试费用,项目管理pmp考试报名,项目管理pmp考试,项目管理pmp多少钱,项目管理pmp报名时间,项目管理pmp报考,项目管理pmp,项目管理pmp,项目pmp培训,西安pmp项目管理,西安pmp培训哪家好,西安pmp培训机构排名,武汉有哪些pmp培训机构,武汉哪里pmp培训好,武汉pmp认证培训,武汉pmp培训哪家好,武汉pmp培训哪个好,武汉pmp培训机构排名,武汉pmp培训机构哪家好,武汉pmp培训机构哪个好,武汉pmp培训机构,武汉pmp培训费用,武汉pmp培训,推荐pmp培训,天津信息系统项目管理师培训,天津pmp培训机构排名,苏州培训pmp,苏州pmp培训哪家好,苏州pmp培训机构排名,苏州pmp培训机构,苏州pmp培训,四川pmp培训机构排名,授权机构的pmp培训,石家庄pmp培训机构,石家庄pmp培训,沈阳pmp项目管理,什么是pmp项目管理,深圳项目管理pmp培训,深圳培训pmp,深圳pmp项目管理师,深圳pmp项目管理培训,深圳pmp项目管理,深圳pmp培训哪家好,深圳pmp培训哪个好,深圳pmp培训机构排名,深圳pmp培训机构哪个好,深圳pmp培训,上海项目管理pmp认证,上海pmp项目管理师,上海pmp项目管理认证,上海pmp项目管理培训,上海pmp培训排名,上海pmp培训哪里好,上海pmp培训哪家好,上海pmp培训哪个好,上海pmp培训机构排名,上海pmp哪里培训,上海pmp考试培训机构,山东pmp培训机构,厦门pmp项目管理培训,厦门pmp培训机构,厦门pmp培训,软件项目经理pmp,如何通过pmp,如何成为pmp,如何参加pmp,全国pmp培训机构,清晖pmp培训怎么样,企业pmp,培训项目管理pmp,培训pmp学费多少,培训pmp项目管理,南宁pmp培训机构,南京pmp培训哪家好,南京pmp培训机构哪家好,南京pmp培训费用,哪里报考pmp,哪家pmp培训好,哪个pmp培训机构好,美国pmp项目管理师,兰州pmp培训机构,靠谱的pmp培训,江苏pmp培训机构排名,济南pmp培训哪家好,济南pmp培训机构,济南pmp培训,华夏智诚pmp培训,华夏pmp培训,河北pmp培训机构,河北pmp培训,合肥pmp培训机构,合肥pmp培训,杭州pmp项目管理培训,杭州pmp培训机构推荐,杭州pmp培训机构哪家好,杭州pmp培训机构,海外项目管理培训,国内pmp培训机构,国家pmp,国际项目管理师pmp,国际项目管理pmp,国际pmp培训怎么样,国际pmp培训费用,贵阳pmp培训机构,广州有哪些pmp培训机构,广州pmp项目管理培训,广州pmp项目管理,广州pmp认证培训,广州pmp培训哪家好,广州pmp培训哪个好,广州pmp培训机构排名,广州pmp培训机构哪家好,广州pmp培训机构哪个好,广州pmp培训,广西pmp培训机构,广西pmp培训,管理人员培训项目,管理pmp,高级项目管理师与pmp,佛山pmp培训机构,东莞项目管理pmp培训,东莞哪里有pmp培训机构,东莞pmp培训机构,达内pmp培训,除了pmp,成都pmp项目管理,成都pmp培训哪个好,产品经理需要考pmp,产品经理pmp,北京有哪些pmp培训机构,北京项目管理pmp认证,北京项目管理pmp培训,北京项目管理pmp,北京哪里pmp培训好,北京pmp项目管理,北京pmp培训中心,北京pmp培训学校,北京pmp培训哪里好,北京pmp培训哪个好,北京pmp培训机构排名,北京pmp培训机构哪个好,北京pmp哪个培训班好,北京pmp考试培训机构,pm项目管理培训,pmp专业认证培训,pmp注册项目管理师,pmp主要讲什么,pmp中国官网,pmp知名培训机构,pmp长春培训机构,pmp在中国,pmp与信息系统项目管理师,pmp与项目管理师,pmp要求,pmp学员,pmp学习资料,pmp学习技巧,pmp信息项目管理师,pmp信息系统项目管理师,pmp项目认证,pmp项目培训,pmp项目考试,pmp项目经理认证,pmp项目经理培训班,pmp项目经理培训,pmp项目经理考试,pmp项目经理,pmp项目管理资格证,pmp项目管理资格认证,pmp项目管理资格考试,pmp项目管理资格,pmp项目管理专业认证,pmp项目管理专业培训,pmp项目管理指南,pmp项目管理证书好考吗,pmp项目管理证书,pmp项目管理有用吗,pmp项目管理学习体会,pmp项目管理书籍,pmp项目管理师怎么考的,pmp项目管理师如何考,pmp项目管理师如何报名,pmp项目管理师培训考试,pmp项目管理师培训机构,pmp项目管理师培训费用,pmp项目管理师培训,pmp项目管理师考试费用是多少,pmp项目管理师考试费用,pmp项目管理师考试报名条件,pmp项目管理师考试报名,pmp项目管理师考试,pmp项目管理师费多少,pmp项目管理师的报考条件,pmp项目管理师报名条件,pmp项目管理师报考费用,pmp项目管理师报考,PMP项目管理师,pmp项目管理什么时候考试,pmp项目管理如何认证,pmp项目管理认证资格,pmp项目管理认证证书,pmp项目管理认证培训,pmp项目管理认证考试培训,pmp项目管理认证考试,pmp项目管理认证费用,pmp项目管理认证报名,pmp项目管理认证,pmp项目管理培训证书,pmp项目管理培训学校,pmp项目管理培训课件,pmp项目管理培训考试报名,pmp项目管理培训考试,pmp项目管理培训教材,pmp项目管理培训机构,pmp项目管理培训费用,pmp项目管理培训多少钱,pmp项目管理培训班,pmp项目管理培训,pmp项目管理课件,pmp项目管理课程培训,pmp项目管理课程,pmp项目管理考试条件,pmp项目管理考试时间,pmp项目管理考试内容,pmp项目管理考试费用,pmp项目管理考试,pmp项目管理经验范文,pmp项目管理教程,pmp项目管理国际认证,pmp项目管理工程师,pmp项目管理费用,pmp项目管理方法,pmp项目管理多少钱,pmp项目管理报名条件,pmp项目管理报名时间,pmp项目管理报名费,pmp项目管理报名,pmp项目管理,pmp武汉培训机构,pmp武汉培训,pmp网校,pmp网上培训,pmp网络培训机构,pmp网络培训费用,pmp网络培训班,pmp网络课程,pmp苏州培训机构,pmp说明,pmp授权培训机构,pmp深圳培训,pmp上海企业培训,pmp厦门培训机构,pmp厦门培训,pmp认证项目经理,pmp认证深圳培训,pmp认证培训那个好,pmp认证培训哪家好,pmp认证培训哪个好,pmp认证培训机构,pmp认证培训费用,pmp认证培训,pmp认证考前培训,pmp培训主要内容,pmp培训在线学习,pmp培训有哪些机构,pmp培训学院,pmp培训学校哪个好,pmp培训学费,pmp培训网络课程,pmp培训网络班,pmp培训推荐,pmp培训团购,pmp培训苏州哪家好,pmp培训苏州,pmp培训深圳,pmp培训上海哪家好,pmp培训厦门,pmp培训哪里好,pmp培训哪里比较好,pmp培训哪家最好,pmp培训哪家机构比较好,pmp培训哪家好,pmp培训哪家比较好上海,pmp培训哪家比较好,pmp培训哪个机构好,pmp培训哪个好,pmp培训哪个比较好,pmp培训吗费用,pmp培训课程费用,pmp培训济南,pmp培训机构有哪些,pmp培训机构选择,pmp培训机构武汉,pmp培训机构推荐,pmp培训机构通过率,pmp培训机构苏州,pmp培训机构排名北京,pmp培训机构排名,pmp培训机构哪家强,pmp培训机构哪家比较好,pmp培训机构哪个最好,pmp培训机构哪个好,pmp培训机构济南,pmp培训机构杭州,pmp培训机构比较,pmp培训慧翔,pmp培训广州,pmp培训费用国际,pmp培训费,pmp培训点,pmp培训的目的,pmp培训的费用,pmp哪个培训机构好,pmp哪个培训好,pmp哪个机构好,pmp免试,pmp免费公开课,pmp免费,pmp没有项目管理经验,pmp论坛,pmp流程,pmp兰州培训机构,pmp课程介绍,pmp考试项目,pmp考前培训机构,pmp机构,pmp和项目管理,pmp和系统集成项目管理师,pmp和高级项目管理师,pmp杭州培训机构,pmp国际项目管理师,pmp国际认证培训,pmp管理质量,pmp管理实践,pmp管理认证,pmp管理圈,pmp管理培训,pmp官方指定培训机构,pmp官方网站,pmp官方培训机构,pmp官方教材,pmp工作经验要求,pmp工程管理,pmp的通过率,pmp的培训机构,pmp的培训,pmp不培训,pmp北京培训机构哪个好,pmp报名截止,pmp报名,pmp报考资质,pmp报考网站,pmp报考费,pmp报过,pmp保过,pmp9月报名,pmp,pmi项目管理培训,it项目管理pmp,2018项目经理pmp考试,2018项目管理pmp,2018年pmp项目管理师,2017pmp,2016年pmp培训,中职教师资格证考试条件,中小学教师资格证报名条件,中小学教师资格证报名入口,中小学教师资格证报考条件,中文教师资格证,怎样能考教师资格证,怎样考取教师资格证,怎样考教师资格证,怎样报考教师资格证,怎么考教师资格证,小学教师资格证如何报名,现在教师资格证怎么考,下半年教师资格证考试时间,体育教师资格证报名条件,如何考教师资格证,如何教师资格证,如何报考教师资格证,全国教师资格证报名入口,哪里考教师资格证,每年教师资格证考试时间,每年教师资格证报名时间,考试教师资格证,考教师资格证资格,考教师资格证怎么报名,考教师资格证在哪里报名,考教师资格证在哪报名,考教师资格证有用么,考教师资格证有哪些科目,考教师资格证要求,考教师资格证要考哪些,考教师资格证需要什么,考教师资格证时间,考教师资格证什么时候报名,考教师资格证考试时间,考教师资格证考试科目,考教师资格证都考什么,考教师资格证的资格,考教师资格证的要求,考教师资格证的时间,考教师资格证的内容,考教师资格证的报名时间,考教师资格证报名时间,考教师资格证报班,考教师资格证,考教师证资格,今年教师资格证什么时候报名,今年教师资格证考试时间,今年教师资格证报名时间,教师资格证最新,教师资格证证怎么考,教师资格证证考试时间,教师资格证证报名,教师资格证怎样考取,教师资格证怎么考取,教师资格证怎么考的,教师资格证怎么考,教师资格证怎么报名啊,教师资格证怎么报名,教师资格证怎么报考,教师资格证在那里考,教师资格证有用,教师资格证样子,教师资格证小学条件,教师资格证下半年考试时间,教师资格证下半年笔试时间,教师资格证网报名入口,教师资格证条件要求,教师资格证书报考条件,教师资格证是怎么考的,教师资格证什么时候报名,教师资格证啥时候考,教师资格证如何考取,教师资格证如何考,教师资格证如何报名,教师资格证认证照片要求,教师资格证认定网报,教师资格证人数,教师资格证哪个网报名,教师资格证每年考几次,教师资格证每年几次,教师资格证每年的考试时间,教师资格证每年的报名时间,教师资格证每年报名时间,教师资格证考试资格,教师资格证考试怎样报名,教师资格证考试在哪考,教师资格证考试要求,教师资格证考试项目,教师资格证考试下半年时间,教师资格证考试网上报名,教师资格证考试网官网,教师资格证考试时间,教师资格证考试时候,教师资格证考试什么时间报名,教师资格证考试什么时间,教师资格证考试什么时候考,教师资格证考试什么时候报名,教师资格证考试日期,教师资格证考试内容,教师资格证考试哪里报名,教师资格证考试科目有哪些,教师资格证考试考些什么,教师资格证考试考什么,教师资格证考试考啥,教师资格证考试官网,教师资格证考试都考什么,教师资格证考试都考啥,教师资格证考试的时间,教师资格证考试成绩,教师资格证考试报名要求,教师资格证考试报名入口,教师资格证考试,教师资格证考什么内容,教师资格证考什么,教师资格证考哪些内容,教师资格证考哪几门啊,教师资格证考录政策,教师资格证考几年,教师资格证考的内容,教师资格证考,教师资格证何时考,教师资格证合格证有效期,教师资格证好考不,教师资格证都考什么,教师资格证的考试,教师资格证的报考条件,教师资格证报名怎么报,教师资格证报名在哪里,教师资格证报名与考试时间,教师资格证报名一年有几次,教师资格证报名要求,教师资格证报名要多少钱,教师资格证报名网址,教师资格证报名网站,教师资格证报名条件,教师资格证报名时间,教师资格证报名入口官网,教师资格证报名入口,教师资格证报名类别,教师资格证报名考试时间,教师资格证报名考什么,教师资格证报名截止日,教师资格证报名和考试时间,教师资格证报名官网,教师资格证报名费用是多少,教师资格证报名方式,教师资格证报名地点,教师资格证报名的时间,教师资格证报名带什么,教师资格证报名,教师资格证报考网站,教师资格证报考网,教师资格证报考条件,教师资格证报考试时间,教师资格证报,教师资格证版本,教师资格证报考条件,教师资格证,教师教师资格证考试,教师教师资格证,教教师资格证考试时间,国考教师资格证报名条件,国考教师资格证报名时间,国考教师资格证报名,国考教师资格证报考条件,国家教师资格证认定网,高校教师资格证报名条件,高级教师资格证报考条件,初级教师资格证考试,北京教师资格证审核,报名教师资格证要求,报名教师资格证条件,报考教师资格证资格,报考教师资格证要求,报考教师资格证条件,报教师资格证,2018年教师资格证报名入口,2018教师资格证下半年报名时间,2018教师资格证下半年,2018教师资格证什么时候报名,2018教师资格证报名官网,做营养师好吗,做营养师的条件,注册营养师怎么样,注册营养师考试,注册营养师2018,注册考营养师高级营养师,注册国际营养师,注册高级营养师,中级营养师难考吗,中级营养师,中国注册营养师,怎样学营养师,怎样考营养师资格证,怎样考二级营养师,怎么样考营养师,怎么学营养师,怎么考营养师资格证,怎么考营养师管理师,怎么考营养师,怎么考取营养师,怎么报名营养师,怎么报考国家营养师,有关营养师的证书,营养师资格证有用吗,营养师资格证书,营养师注册,营养师中级,营养师证怎样考,营养师证怎么考,营养师证有用吗,营养师证有什么用,营养师证有几种,营养师证什么时候考,营养师证考试条件,营养师证好考吗,营养师证等级,营养师证报名条件,营养师证,营养师这个职业怎么样,营养师怎么学习,营养师怎么学,营养师怎么考,营养师怎么工作,营养师怎么报名学习,营养师怎么报名,营养师有没有用,营养师有,营养师一级培训,营养师一级管理师,营养师学习,营养师学慧网,营养师学费多少,营养师需要条件,营养师需要具备哪些条件,营养师条件,营养师收入,营养师时间,营养师什么时候考试,营养师什么时候考,营养师申报条件,营养师如何考取,营养师如何考,营养师如何报名,营养师普为,营养师难考吗,营养师哪里学,营养师论文,营养师考试营养师考试时间,营养师考试要求,营养师考试条件,营养师考试时间,营养师考试什么时候,营养师考试,营养师具体做什么,营养师具体是做什么的,营养师健康管理师,营养师基础,营养师好考不,营养师行业,营养师国家,营养师管理师怎么样,营养师管理师有用吗,营养师管理师费用,营养师管理师等级,营养师管理师,营养师管理好吗,营养师公共营养师,营养师高师,营养师高级证书,营养师高级,营养师分几级,营养师分几个级别,营养师二级,营养师等级,营养师的证怎么考,营养师的证有用吗,营养师的报名条件,营养师的报名,营养师的报考资格,营养师报名网,营养师报名条件,营养师报名,营养师报,营养师,学营养师的条件,学习营养师,学慧网营养师,想学营养师,想考营养师,想考个营养师,我想学营养师,我想考营养师,我考营养师,网上报名营养师,网上报考营养师,如何做营养师,如何学营养师,如何考营养师资格证,如何考营养师管理师,如何考营养师,如何考取营养师,如何考高级营养师证,如何成为营养师,如何才能考营养师,全国营养师资格证,全国营养师考试,全国营养师,请营养师,哪里学营养师,哪里需要营养师,哪里可以考营养师,考营养师证有用吗,考营养师有什么用,考营养师要什么条件,考营养师需要什么条件,考营养师需要什么,考营养师需要哪些条件,考营养师条件,考营养师管理师有用吗,考营养师的条件,考营养师,考取营养师,健康营养师资格证,好的营养师培训,国家注册营养师考试,国家中级营养师怎么考,国家中级营养师,国家营养师资格证书,国家营养师资格证,国家营养师资格考试,国家营养师证,国家营养师怎么考,国家营养师考试网,国家营养师考试条件,国家营养师考试时间,国家营养师考试,国家营养师,国家一级营养师证,国家一级营养师,国家高级营养师,国家二级营养师考试,国际注册营养师考试,国际注册营养师,国际营养师证,国际营养师,关于营养师考试,公共营养师考试条件,高级营养师资格证,高级营养师证怎么考,高级营养师证,高级营养师培训,高级营养师管理师有用吗,高级营养师报名条件,高级营养师报名,高级营养师报考,高级营养师,二级营养师,的营养师,初级营养师,保健营养师国际营养师,aci国际营养师,2018营养师,2018年营养师,自学物业管理,注册物业管理师证书,质量管理员证书,找物业管理公司,怎么办物业经理证书,扬州物业管理员证书,徐州物业管理经理上岗证,物业项目经理证书,物业项目负责人证书,物业人力资源管理,物业企业经理证书怎么考,物业企业经理证书,物业企业经理人证书,物业经理证书怎么考,物业经理证书有用吗,物业经理证书样本,物业经理证书如何考取,物业经理证书报考,物业经理需要什么证书,物业经理上岗证书,物业经理人资格证书,物业经理人上岗证书,物业经理人岗位证书,物业经理岗位证书报考,物业经理岗位证书,物业管理专业人员职业资格证书,物业管理员资格证书,物业管理员资格证,物业管理员证书,物业管理员上岗证书,物业管理员工作内容,物业管理员工作服,物业管理员工作,物业管理员报名条件,物业管理项目经理资格证,物业管理项目经理证书,物业管理特约服务,物业管理人员资格证书,物业管理人员证书,物业管理人力资源,物业管理企业经理证书,物业管理企业经理上岗证书,物业管理企业经理上岗证培训班,物业管理企业经理上岗证培训,物业管理企业经理上岗证考试,物业管理企业经理上岗证,物业管理经理资格证书,物业管理经理资格证,物业管理经理上岗证书,物业管理经理上岗证培训,物业管理经理上岗证,物业管理公司级别,物业管理公司查询,物业管理岗位证书,物业管理服务等级标准,物业管理部门经理证,物业管理部门经理上岗证,物业岗位经理证书,物业服务与管理,物业部门经理证书,物业安全管理的主要内容,苏州物业管理师挂靠,上海物业经理岗位证书,上海物业管理员证书,上海物业管理员上岗证培训,上海物业管理企业经理上岗证,上海物业管理经理人上岗证,全国物业管理企业经理证书,全国物业管理企业经理上岗证,全国物业管理经理资格证书,宁波物业管理经理证,宁波物业管理经理上岗证,考物业经理证书,建设部物业经理岗位证书,建设部物业管理经理上岗证,淮安物业管理证书,杭州物业管理员证书,杭州物业管理经理证,广东省物业管理行业协会,成都物业管理协会官网,常州物业管理员上岗证,常州物业管理经理上岗证,做心理咨询师,最好的心理咨询师培训班,咨询心理咨询师,专业心理咨询师,专业的心理咨询师,著名的心理咨询师,中山心理咨询师,中级心理咨询师,中级心理治疗师,中国国家心理咨询师,知名心理咨询师,知名的心理咨询师,正规心理咨询师培训机构,正规心理咨询师,找心理咨询师有用吗,怎样找心理咨询师,怎样成为心理咨询师,怎样才能成为一个心理咨询师,怎么样成为心理咨询师,怎么选择心理咨询师培训机构,怎么考心理咨询师证,怎么当心理咨询师,怎么才能当心理咨询师,在线心理咨询师免费,在线心理咨询师,在线心里医生咨询师,在哪里考心理咨询师,有心理咨询师吗,有名心理咨询师,一级心理咨询师条件,一级心理咨询师培训班,一级心理咨询师,心理咨询咨询师,心理咨询师做什么,心理咨询师最高几级,心理咨询师资格证怎么考,心理咨询师资格证考试,心理咨询师资格证报考条件,心理咨询师资格证,心理咨询师资格考试报名条件,心理咨询师咨询,心理咨询师著名,心理咨询师中心,心理咨询师中山,心理咨询师指导,心理咨询师直接考二级,心理咨询师证怎样报名,心理咨询师证怎么考,心理咨询师证有用,心理咨询师证有效期,心理咨询师证什么时候考,心理咨询师证考试时间,心理咨询师证报名,心理咨询师证,心理咨询师怎样,心理咨询师怎么考,心理咨询师在线咨询,心理咨询师在线,心理咨询师在哪里找,心理咨询师有哪些人,心理咨询师有几级,心理咨询师有,心理咨询师应具备的条件,心理咨询师一级报名条件,心理咨询师一级报名,心理咨询师一级,心理咨询师一般什么时候报名,心理咨询师一般多少钱,心理咨询师要考什么,心理咨询师学习网,心理咨询师学习,心理咨询师学会,心理咨询师需要考什么证,心理咨询师信息,心理咨询师心理医生,心理咨询师网站,心理咨询师网上咨询,心理咨询师网上报名系统,心理咨询师网上报名,心理咨询师网上,心理咨询师网,心理咨询师推荐,心理咨询师室,心理咨询师是做什么的,心理咨询师师报考条件,心理咨询师师,心理咨询师什么,心理咨询师三级考几门,心理咨询师全国,心理咨询师去哪考,心理咨询师培训班哪个好,心理咨询师培训班费用,心理咨询师排名,心理咨询师那里有,心理咨询师哪里找,心理咨询师哪里的好,心理咨询师哪好,心理咨询师免费咨询,心理咨询师免费,心理咨询师论坛,心理咨询师流程,心理咨询师可以做什么,心理咨询师可以自己考吗,心理咨询师考试咨询,心理咨询师考试怎么报名,心理咨询师考试条件,心理咨询师考试什么时候报名,心理咨询师考试入口,心理咨询师考试日期,心理咨询师考试难吗,心理咨询师考试难不难,心理咨询师考试级别,心理咨询师考试机构,心理咨询师考试官网,心理咨询师考试费用,心理咨询师考试费,心理咨询师考试答案,心理咨询师考试报名条件,心理咨询师考试班,心理咨询师考什么,心理咨询师考哪些科目,心理咨询师级别,心理咨询师基础,心理咨询师湖南,心理咨询师河南,心理咨询师河北,心理咨询师和心理医生,心理咨询师好考吗,心理咨询师好,心理咨询师过关率,心理咨询师国家考试,心理咨询师官网,心理咨询师分为几级,心理咨询师分类,心理咨询师分几级,心理咨询师二级资格证,心理咨询师二级正规培训,心理咨询师二级条件,心理咨询师二级视频,心理咨询师二级培训机构,心理咨询师二级理论,心理咨询师二级考试时间,心理咨询师二级考试科目,心理咨询师二级考试报名,心理咨询师二级考试,心理咨询师二级考几门,心理咨询师二级价格,心理咨询师二级代报名,心理咨询师二级答案,心理咨询师二级报名条件,心理咨询师二级报名,心理咨询师二级,心理咨询师都考什么,心理咨询师等级,心理咨询师的资格证,心理咨询师的资格,心理咨询师的条件,心理咨询师的考试条件,心理咨询师的级别,心理咨询师的工作内容,心理咨询师的等级,心理咨询师的,心理咨询师成绩查询网,心理咨询师成绩查询时间,心理咨询师查询成绩,心理咨询师报名哪家好,心理咨询师报,心理咨询师2018考试时间,心理咨询师2018,心理咨询师2016,心理咨询师2015,心理咨询师1级,心理咨询师,心理咨询,心理咨师,心理治疗治疗师,心理治疗师网,心理治疗师培训班,心理治疗师考试培训,心理治疗师和心理医生,心理治疗师二级,心理治疗师报名时间,心理在线咨询师,心理医生咨询师,心理医生与心理咨询师,心理一级咨询师,心理学咨询师怎么考,心理学咨询师怎么报名,心理心理咨询师,心理师在线咨询,心理免费咨询师,心理健康师,心理初级咨询师考试咨询,心里咨询师在线咨询,心里咨询师是什么,想考心理咨询师证,想看心理咨询师,我想找心理咨询师,网心理咨询师,网上咨询心理师,网上找心理咨询师,网上心理咨询专家,网上心理咨询师,网上免费心理咨询师,网上的心理咨询师,市心理咨询师,上海心理治疗师,上海市心理咨询师,如何做一名心理咨询师,如何成为一名心理咨询师,如何成为心理咨询师,全国知名心理咨询师,全国二级心理咨询师有用吗,权威心理咨询师,去哪里找心理咨询师,情感心理咨询师在线,那有心理咨询师,哪心理咨询师好,哪里能考心理咨询师证,哪里可以找心理咨询师,免费在线心理咨询师,免费心理咨询师在线咨询,免费心理咨询师在线,免费的心理咨询师,零基础心理咨询师,考心理咨询师有什么条件,考心理咨询师要多少钱,考心理咨询师哪家好,考心理咨询师费用,考心理咨询师二级,考心理咨询师的条件,济南市心理咨询师,湖南心理咨询师,河北心理咨询师,好的心理咨询师,国内有名的心理咨询师,国家注册二级心理咨询师,国家职业心理咨询师培训,国家一级心理咨询师,国家心理咨询师怎么考,国家心理咨询师条件,国家心理咨询师级别,国家心理咨询师机构,国家心理咨询师官网,国家心理咨询师二级,国家心理咨询师报名费用,国家心理咨询师吧,国家心理咨询师,国家心理治疗师,国家心理辅导师,国家级心理咨询师考试,国家高级心理咨询师,国家二级心理咨询师真题,国家二级心理咨询师培训机构,国家二级心理咨询师考试,国家二级心理咨询师查询,国家二级心理咨询师报考条件,国际心理咨询师怎么考,国际心理咨询师,广东省心理咨询师,高级心理咨询师,二级心理咨询师考试科目,二级心理咨询师考试报名条件,二级心理咨询师考试,二级心理咨询师机构,二级心理咨询师个人成长报告,二级心理咨询师成长报告,二级心理咨询师报名条件,二级心理咨询师案例分析,二级心理咨询师,儿童心理咨询师怎么考,的心理咨询师,从事心理咨询师,初级心理咨询师考试,比较好的心理咨询师,安徽省心理咨询师,2018心理咨询师证考试,2018心理咨询师新政策,2018心理咨询师,2018年心理咨询师证,2018年心理咨询师,2018年下半年心理咨询师报名时间,2018年还有心理咨询师考试吗,2018国家心理咨询师,2016心理咨询师,2016年心理咨询师,2016国家心理咨询师,2015心理咨询师,2015年心理咨询师,2015国家心理咨询师,注册一级消防师报考条件,注册一级消防工程师报名时间,注册消防师资格证,注册消防师证书,注册消防师证,注册消防师报名费用,注册消防工程师资格考试时间,注册消防工程师资格考试,注册消防工程师证书有什么用,注册消防工程师证好考吗,注册消防工程师一级证,注册消防工程师学习资料,注册消防工程师网上课程,注册消防工程师网课,注册消防工程师考试日期,注册消防工程师考试免试条件,注册消防工程师报名时间广西省,注册二级消防师报考条件,浙江一级注册消防师报考条件,怎样报考消防工程师证,怎么报考消防工程师证,一级注册消防师证,一级注册消防师报名条件,一级注册消防师报考条件,一级注册消防工程师资格证书,一级注册消防工程师网课,一级注册消防工程师的报名时间,一级注册消防工程师报名时间,一级消防注册师报名条件,一级消防注册师报考条件,一级消防注册工程师报名时间,一级消防证书报考条件,一级消防证书,一级消防师证怎么考,一级消防师证报考条件,一级消防师证,一级消防工程师资格考试,一级消防工程师证有什么用,一级消防工程师证考试条件,一级消防工程师证好考吗,一级消防工程师证报名条件,一级消防工程师证报考条件,一级消防工程师证报考,一级消防工程师免考条件,消防证中级报考条件,消防证书在哪里报名,消防证书有几级,消防证书报名条件,消防证书报考,消防证工程师报名条件,消防一级工程师证,消防师资格证报考条件,消防师资格证,消防师证怎么考,消防师证书,消防师证难考么,消防师证好考吗,消防师证报名资格,消防师证报名条件,消防师证报名时间,消防师证报名,消防师证报考要求,消防师证报考条件,消防师证,消防考证,消防工程证书怎么考,消防工程证书,消防工程师资格证书,消防工程师资格条件,消防工程师资格认证,消防工程师资格考试时间,消防工程师资格考试,消防工程师执业证书,消防工程师证值钱吗,消防工程师证怎么注册,消防工程师证怎么考,消防工程师证怎么报考,消防工程师证有用么,消防工程师证有什么用,消防工程师证有哪些,消防工程师证网上报名,消防工程师证条件,消防工程师证书有用吗,消防工程师证书是什么,消防工程师证书考几门,消防工程师证书好考吗,消防工程师证书好不好,消防工程师证书报考条件,消防工程师证书,消防工程师证是什么,消防工程师证试题,消防工程师证什么时候考试,消防工程师证如何考,消防工程师证培训机构,消防工程师证难考吗,消防工程师证考试条件,消防工程师证考试内容,消防工程师证考试,消防工程师证好考吗,消防工程师证都考什么内容,消防工程师证报名条件,消防工程师证报名时间,消防工程师证报名,消防工程师证报考条件,消防工程师证报考时间,消防工程师证报考,消防工程师证,消防工程师考试题,消防工程师考试好考吗,消防工程师考试好过吗,消防工程师报名资格不够,消防工程师报名资格,消防工程师报名需要什么条件,消防工程师报考资格,天津一级注册消防师报考条件,苏州二级消防师报名条件,苏州二级消防工程师报考条件,深圳消防工程师报名,上海二级消防师报名条件,山西注册消防工程师考试时间,山西省注册消防师报名条件,如何报考消防工程师证书,如何报考消防工程师证,考注册消防师什么条件,考消防证书,考消防师证,考消防工程师证条件,考消防工程师证书,考消防工程师证容易吗,江苏注册消防师报考条件,江苏消防师证报考条件,江苏消防师证,河南注册消防师报名条件,河北注册消防师报名条件,河北注册消防师报考时间,广西省注册消防师报名时间,广东消防工程师证报考条件,高级消防证书,福建注册消防师报考时间,二级注册消防师报名,二级注册消防师报考条件,二级消防师证报考条件,二级消防师报名条件,二级消防工程师资格证,二级消防工程师证书考试时间,二级消防工程师证书考试培训,二级消防工程师考试好吗,二级消防工程师考试好过么,二级消防工程师考试好过吗,二级消防工程师考试好,二级消防工程师报名资格,二级消防工程师报名条件广东省,二级消防工程师报考资格,二级级消防师报考条件,北京市一级消防工程师证书,报考注册消防师需要什么条件,报考一级消防工程师证,报考消防工程师资格,报考消防工程师证书,2016年消防工程师证书考试,重庆人力资源资格证报名,怎么考人力资源证书,怎么报考人力资源资格证,有关人力资源的证书,一级人力资源管理证书,想考人力资源证书,天津市人力资源证书,深圳人力资源证书,上海市人力资源证书,上海人力资源证书,上海人力资源三级证书,如何考人力资源证书,人力资源资格证书有用吗,人力资源资格证书考试,人力资源资格证书二级,人力资源资格证书,人力资源职业资格证书,人力资源职称证书,人力资源证书怎么考,人力资源证书怎么报考,人力资源证书有哪些,人力资源证书有几级,人力资源证书四级,人力资源证书三级,人力资源证书培训机构,人力资源证书考试条件,人力资源证书考试时间,人力资源证书考试报名条件,人力资源证书考试报名时间,人力资源证书考试,人力资源证书考什么,人力资源证书分几级,人力资源证书二级,人力资源证书等级,人力资源证书初级,人力资源证书补贴,人力资源证书报名条件,人力资源证书报名时间,人力资源证书报名费,人力资源证书报名,人力资源证书报考条件,人力资源证书报考时间,人力资源证书办理,人力资源证书,人力资源证的条件,人力资源证报考网站,人力资源证3级,人力资源证,人力资源有哪些证书,人力资源需要什么证书,人力资源相关证书,人力资源相关的证书,人力资源三级证书报考条件,人力资源三级证书,人力资源认证考试,人力资源认证,人力资源类证书,人力资源考试认证,人力资源管理资格证书,人力资源管理职业资格证书,人力资源管理职业证书,人力资源管理证书什么时候考,人力资源管理证书考试,人力资源管理证书报名,人力资源管理证书报考条件,人力资源管理证书报考,人力资源管理证书,人力资源管理员证书,人力资源管理师证书有什么用,人力资源管理师证书报名,人力资源管理师证书报考条件,人力资源管理师证书,人力资源管理从业资格证书,人力资源管理初级证书,人力资源管理3级证书,人力资源岗位证书,人力资源方面证书,人力资源方面的证书,人力资源二级证书报名,人力资源二级证书报考条件,人力资源二级证书,人力资源都有什么证书,人力资源等级证,人力资源的相关证书,人力资源从业资格证书报考条件,人力资源从业资格证书报考,人力资源从业资格证书,人力资源从业证书,人力资源初级证书,人力资源部颁发的证书,人力资源3级证书,人力资源2级证书,人力证书,全国人力资源资格证考试,全国人力资源证,企业人力资源证书,企业人力资源管理证书,企业人力资源管理师资格证书,考人力资源资格证书,考人力资源证书,考人力资源二级证书有用么,考取人力资源证书,国家人力资源证书,广州人力资源证书,高级人力资源证,二级人力资源证书报考条件,初级人力资源资格证,北京人力资源证书考试,北京人力资源证书,报考人力资源证书,报考人力资源证,3级人力资源证,2018人力资源证书,2018人力资源二级证书报考条件";
//		String[] keyWordArray1 = keyWordArray.split(",");
//		for (String keyWord : keyWordArray1) {
//			String url = get("https://www.baidu.com/s?ie=utf-8&wd=" + keyWord, true, "utf-8");
//			Document doc = Jsoup.parse(url);
//			Element rows = doc.select("div[id=content_left]").get(0);
//
//			int i = 0;
//			for (Element row : rows.select("div[id~=\\d]")) {
//				final Advertise advertise = new Advertise();
//				Element a = row.select("a").get(0);
//				if (StringUtils.isBlank(a.text())) {
//					continue;
//				}
//				i += 1;//第几个
//				System.out.println("第" + i + "个");//标题
//				advertise.setKeyWord(keyWord);
//				if (row.select(".ec_tuiguang_ppimlink").size() > 0 || row.select(".ec_tuiguang_ppouter").size() > 0) {
//					System.out.print("推广  ");//是否推广
//					advertise.setAdvertiseType("推广");
//				} else {
//					advertise.setAdvertiseType("非推广");
//				}
//				System.out.println(" 百度的url:" + a.attr("href"));//百度的url
//				advertise.setBaiduUrl(a.attr("href"));
//				System.out.println("标题:" + a.text());//标题
//				advertise.setAdvertiseTitle(a.text());
//
//				String regex1 = "[a-zA-z0-9-]+[.][a-zA-z0-9-]+[.][a-z]+[.][a-z]+";
//				String regex = "[a-zA-z0-9-]+[.][a-zA-z0-9-]+[.][a-z]+";
//				Pattern pattern = Pattern.compile(regex1);
//				Matcher m = pattern.matcher(row.text());
//				String companyUrl = null;
//				if (m.find()) {
//					companyUrl = m.group();
//					System.out.println("url:" + companyUrl);//本身的网址
//				} else {
//					Pattern pattern2 = Pattern.compile(regex);
//					Matcher m2 = pattern2.matcher(row.text());
//					if (m2.find()) {
//						companyUrl = m2.group();
//						System.out.println("url:" + companyUrl);//本身的网址
//					}
//				}
//				advertise.setCompanyUrl(companyUrl);
//				//判断是否是百度网页，如若为baidu.com则不进行抓取以及存储
//				if (companyUrl != null && companyUrl.contains("baidu.com")) {
//					continue;
//				}
//				//查询页面编码格式，方式抓取网页信息时乱码
//				String charset = ClientUtil.getEncodingByContentStream(a.attr("href"));
//				System.out.println("编码====================================:" + charset);
//				//进一步解析网址中的内容，获取所需的电话或者公司名称
//				final String url1 = StringUtils.deleteWhitespace(ClientUtil.get(a.attr("href"), true, charset));
//				System.out.println("HTML页面====================================:" + url1);
//				try {
//					Thread.sleep(1);
//				} catch (InterruptedException e) {
//					e.printStackTrace();
//				}
//				cached.execute(new Runnable() {
//					public void run() {
//						if (url1 != null) {
//							//1、找有限公司，取最后一个
//							//找联系我们 或者 关于我们 或者
//							Document docWeb = Jsoup.parse(url1);
//							//第一层查找公司名称
//							Elements elements = docWeb.getElementsContainingText("有限公司");
//							String companyName = "";
//							String mobilePhone = "";
//							String phone = "";
//							if (elements.size() > 0) {
//								companyName = elements.get(elements.size() - 1).text();
//								advertise.setCompanyName(companyName);
//							}
//							String txtcontent = delHtmlTags(url1);
//							//查找座机号
//							phone = ClientUtil.checkTelephone(txtcontent);
//							if (phone != null && phone != "") {
//								advertise.setTelePhone(phone);
//							}
//							//查找手机号
//							mobilePhone = ClientUtil.checkCellphone(txtcontent);
//							if (mobilePhone != null && mobilePhone != "") {
//								advertise.setCellPhone(mobilePhone);
//							}
//							System.out.println("第一层页面最后一个公司名称:" + companyName);
//							System.out.println("第一层页面手机号:" + mobilePhone);
//							System.out.println("第一层页面座机号:" + phone);
//							if (companyName == "" || mobilePhone == null || phone == null) {
//								//接着进行深层次抓取，通过联系我们或关于我们来查找公司名称和手机号
//								elements = docWeb.getElementsContainingText("联系我们");
//								String companyName2 = "";
//								if (elements.size() > 0) {
//									System.out.println("进入第二层=====================寻找联系我们");
//									companyName2 = elements.get(elements.size() - 1).text();
//									String regexPhone = "(.*)(<a)(.*)(联系我们)(.*)";
//									Pattern patternPhone = Pattern.compile(regexPhone);
//									Matcher matcherPhone = patternPhone.matcher(url1);
//									boolean b = matcherPhone.matches();
//									if (b) {
//										*//*System.out.println("联系我们页面中的==== aaaaaa:"+matcherPhone.group(3));*//*
//										regexPhone = "(.*)(href=\")(.*)(shtml)(\")(.*)";
//										patternPhone = Pattern.compile(regexPhone);
//										matcherPhone = patternPhone.matcher(matcherPhone.group(3));
//										if (matcherPhone.matches()) {
//											String aTab = matcherPhone.group(3) + "shtml";
//											System.out.println("联系我们页面的a链接:" + aTab);
//											//获取联系我们的a链接后
//											//查询页面编码格式，方式抓取网页信息时乱码
//											String charsetDouble = ClientUtil.getEncodingByContentStream(aTab);
//											System.out.println("通过联系我们找到的第二层页面的编码====================================:" + charsetDouble);
//											String aLink = ClientUtil.get(aTab, true, charsetDouble);
//
//											//如果第一层页面找到了公司名称，对于深层页面就无需再找
//											if (companyName == null || companyName == "") {
//												Document docLink = Jsoup.parse(aLink);
//												elements = docLink.getElementsContainingText("有限公司");
//												if (elements.size() > 0) {
//													companyName = elements.get(elements.size() - 1).text();
//													advertise.setCompanyName(companyName);
//												}
//												System.out.println("第二层页面======联系我们====获取的公司名称:" + companyName);
//											}
//											System.out.println("======================联系我们=====第二层页面============================:" + aLink);
//											//剔除所有标签，防止录入非手机号的数据
//											String txtcontentaLink = delHtmlTags(aLink);
//											//判断是否已找到手机号
//											if (mobilePhone == null || mobilePhone == "") {
//												//手机号
//												String cellPhone = ClientUtil.checkCellphone(txtcontentaLink);
//												if (cellPhone != null) {
//													advertise.setCellPhone(cellPhone);
//												}
//												System.out.println("第二层页面======联系我们====手机号:" + cellPhone);
//
//											}
//											//判断是否已找到座机号
//											if (phone == null || phone == "") {
//												//固定电话
//												String telePhone = ClientUtil.checkTelephone(txtcontentaLink);
//												if (telePhone != null) {
//													advertise.setTelePhone(telePhone);
//												}
//												System.out.println("第二层页面======联系我们====固定电话:" + telePhone);
//											}
//											System.out.println("------------------第2222222222222222层结束--------------------------");
//										}
//									}
//								}
//							}
//
//							*//*如果没有找到公司名称并且联系我们也没有，就查找关于我们*//*
//							if (companyName == "" || mobilePhone == null || phone == null) {
//								Elements elementsAbout = docWeb.getElementsContainingText("关于我们");
//								String companyNameAbout = "";
//								if (elementsAbout.size() > 0) {
//									System.out.println("进入第二层=====================寻找关于我们");
//									companyNameAbout = elementsAbout.get(elementsAbout.size() - 1).text();
//									String regexPhone = "(.*)(<a)(.*)(关于我们)(.*)";
//									Pattern patternPhone = Pattern.compile(regexPhone);
//									Matcher matcherPhone = patternPhone.matcher(url1);
//									boolean b = matcherPhone.matches();
//									if (b) {
//										*//*System.out.println("关于我们的==== aaaaaaa:"+matcherPhone.group(3));*//*
//	 *//*patternPhone = Pattern.compile("(.*)(href=\")(.*)(\"target)(.*)");*//*
//										patternPhone = Pattern.compile("(.*)(href=\")(.*)(/\")(.*)");
//										matcherPhone = patternPhone.matcher(matcherPhone.group(3));
//										b = matcherPhone.matches();
//										if (b) {
//											System.out.println("关于我们页面的a链接:" + matcherPhone.group(3));
//											String charsetDouble = ClientUtil.getEncodingByContentStream(matcherPhone.group(3));
//											System.out.println("通过关于我们找到的第二层页面的编码====================================:" + charsetDouble);
//											try {
//												String aLink = ClientUtil.get(matcherPhone.group(3), true, charsetDouble);
//												Document docLink = Jsoup.parse(aLink);
//
//												System.out.println("======================关于我们=====第二层页面============================:" + aLink);
//												//如果第一层页面找到了公司名称，对于深层页面就无需再找
//												if (companyName == null || companyName == "") {
//													elements = docLink.getElementsContainingText("有限公司");
//													if (elements.size() > 0) {
//														companyName = elements.get(elements.size() - 1).text();
//														advertise.setCompanyName(companyName);
//													}
//													System.out.println("第二层页面======关于我们====获取的公司名称:" + companyName);
//												}
//												//剔除所有标签，防止录入非手机号的数据
//												String txtcontentaLink = delHtmlTags(aLink);
//												//判断是否已找到手机号
//												if (mobilePhone == null || mobilePhone == "") {
//													//手机号
//													String cellPhone = ClientUtil.checkCellphone(txtcontentaLink);
//													if (cellPhone != null) {
//														advertise.setCellPhone(cellPhone);
//													}
//													System.out.println("第二层页面======关于我们====手机号:" + cellPhone);
//
//												}
//												//判断是否已找到座机号
//												if (phone == null || phone == "") {
//													//固定电话
//													String telePhone = ClientUtil.checkTelephone(txtcontentaLink);
//													if (telePhone != null) {
//														advertise.setTelePhone(telePhone);
//													}
//													System.out.println("第二层页面======关于我们====固定电话:" + telePhone);
//												}
//												System.out.println("------------------第2222222222222222层结束--------------------------");
//											} catch (Exception e) {
//												e.printStackTrace();
//											}
//
//										}
//									}
//								}
//							}
//							try {
//								//如若存在已存储，并且为非推广，则不进行下面的操作了
//
//								Integer count = crmAdvertiseServiceImpl.findByWhere(advertise);
//								if (count > 0) {
//
//								} else {
//									crmAdvertiseServiceImpl.insert(advertise);
//								}
//
//
//							} catch (Exception e) {
//								e.printStackTrace();
//							}
//						}
//					}
//				});
//			}
//		}
//	}


	/*@ResponseBody
	@RequestMapping(value = "/insertAdvertise")
	public String insertAdvertise() {
		try {
			String keyWordArray = "pmp认证项目经理,pmp认证深圳培训,pmp认证培训那个好,pmp认证培训哪家好,pmp认证培训哪个好,pmp认证培训机构,pmp认证培训费用,pmp认证培训,pmp认证考前培训,pmp培训主要内容,pmp培训在线学习,pmp培训有哪些机构,pmp培训学院,pmp培训学校哪个好,pmp培训学费,pmp培训网络课程,pmp培训网络班,pmp培训推荐,pmp培训团购,pmp培训苏州哪家好,pmp培训苏州,pmp培训深圳,pmp培训上海哪家好,pmp培训厦门,pmp培训哪里好,pmp培训哪里比较好,pmp培训哪家最好,pmp培训哪家机构比较好,pmp培训哪家好,pmp培训哪家比较好上海,pmp培训哪家比较好,pmp培训哪个机构好,pmp培训哪个好,pmp培训哪个比较好,pmp培训吗费用,pmp培训课程费用,pmp培训济南,pmp培训机构有哪些,pmp培训机构选择,pmp培训机构武汉,pmp培训机构推荐,pmp培训机构通过率,pmp培训机构苏州,pmp培训机构排名北京,pmp培训机构排名,pmp培训机构哪家强,pmp培训机构哪家比较好,pmp培训机构哪个最好,pmp培训机构哪个好,pmp培训机构济南,pmp培训机构杭州,pmp培训机构比较,pmp培训慧翔,pmp培训广州,pmp培训费用国际,pmp培训费,pmp培训点,pmp培训的目的,pmp培训的费用,pmp哪个培训机构好,pmp哪个培训好,pmp哪个机构好,pmp免试,pmp免费公开课,pmp免费,pmp没有项目管理经验,pmp论坛,pmp流程,pmp兰州培训机构,pmp课程介绍,pmp考试项目,pmp考前培训机构,pmp机构,pmp和项目管理,pmp和系统集成项目管理师,pmp和高级项目管理师,pmp杭州培训机构,pmp国际项目管理师,pmp国际认证培训,pmp管理质量,pmp管理实践,pmp管理认证,pmp管理圈,pmp管理培训,pmp官方指定培训机构,pmp官方网站,pmp官方培训机构,pmp官方教材,pmp工作经验要求,pmp工程管理,pmp的通过率,pmp的培训机构,pmp的培训,pmp不培训,pmp北京培训机构哪个好,pmp报名截止,pmp报名,pmp报考资质,pmp报考网站,pmp报考费,pmp报过,pmp保过,pmp9月报名,pmp,pmi项目管理培训,it项目管理pmp,2018项目经理pmp考试,2018项目管理pmp,2018年pmp项目管理师,2017pmp,2016年pmp培训,中职教师资格证考试条件,中小学教师资格证报名条件,中小学教师资格证报名入口,中小学教师资格证报考条件,中文教师资格证,怎样能考教师资格证,怎样考取教师资格证,怎样考教师资格证,怎样报考教师资格证,怎么考教师资格证,小学教师资格证如何报名,现在教师资格证怎么考,下半年教师资格证考试时间,体育教师资格证报名条件,如何考教师资格证,如何教师资格证,如何报考教师资格证,全国教师资格证报名入口,哪里考教师资格证,每年教师资格证考试时间,每年教师资格证报名时间,考试教师资格证,考教师资格证资格,考教师资格证怎么报名,考教师资格证在哪里报名,考教师资格证在哪报名,考教师资格证有用么,考教师资格证有哪些科目,考教师资格证要求,考教师资格证要考哪些,考教师资格证需要什么,考教师资格证时间,考教师资格证什么时候报名,考教师资格证考试时间,考教师资格证考试科目,考教师资格证都考什么,考教师资格证的资格,考教师资格证的要求,考教师资格证的时间,考教师资格证的内容,考教师资格证的报名时间,考教师资格证报名时间,考教师资格证报班,考教师资格证,考教师证资格,今年教师资格证什么时候报名,今年教师资格证考试时间,今年教师资格证报名时间,教师资格证最新,教师资格证证怎么考,教师资格证证考试时间,教师资格证证报名,教师资格证怎样考取,教师资格证怎么考取,教师资格证怎么考的,教师资格证怎么考,教师资格证怎么报名啊,教师资格证怎么报名,教师资格证怎么报考,教师资格证在那里考,教师资格证有用,教师资格证样子,教师资格证小学条件,教师资格证下半年考试时间,教师资格证下半年笔试时间,教师资格证网报名入口,教师资格证条件要求,教师资格证书报考条件,教师资格证是怎么考的,教师资格证什么时候报名,教师资格证啥时候考,教师资格证如何考取,教师资格证如何考,教师资格证如何报名,教师资格证认证照片要求,教师资格证认定网报,教师资格证人数,教师资格证哪个网报名,教师资格证每年考几次,教师资格证每年几次,教师资格证每年的考试时间,教师资格证每年的报名时间,教师资格证每年报名时间,教师资格证考试资格,教师资格证考试怎样报名,教师资格证考试在哪考,教师资格证考试要求,教师资格证考试项目,教师资格证考试下半年时间,教师资格证考试网上报名,教师资格证考试网官网,教师资格证考试时间,教师资格证考试时候,教师资格证考试什么时间报名,教师资格证考试什么时间,教师资格证考试什么时候考,教师资格证考试什么时候报名,教师资格证考试日期,教师资格证考试内容,教师资格证考试哪里报名,教师资格证考试科目有哪些,教师资格证考试考些什么,教师资格证考试考什么,教师资格证考试考啥,教师资格证考试官网,教师资格证考试都考什么,教师资格证考试都考啥,教师资格证考试的时间,教师资格证考试成绩,教师资格证考试报名要求,教师资格证考试报名入口,教师资格证考试,教师资格证考什么内容,教师资格证考什么,教师资格证考哪些内容,教师资格证考哪几门啊,教师资格证考录政策,教师资格证考几年,教师资格证考的内容,教师资格证考,教师资格证何时考,教师资格证合格证有效期,教师资格证好考不,教师资格证都考什么,教师资格证的考试,教师资格证的报考条件,教师资格证报名怎么报,教师资格证报名在哪里,教师资格证报名与考试时间,教师资格证报名一年有几次,教师资格证报名要求,教师资格证报名要多少钱,教师资格证报名网址,教师资格证报名网站,教师资格证报名条件,教师资格证报名时间,教师资格证报名入口官网,教师资格证报名入口,教师资格证报名类别,教师资格证报名考试时间,教师资格证报名考什么,教师资格证报名截止日,教师资格证报名和考试时间,教师资格证报名官网,教师资格证报名费用是多少,教师资格证报名方式,教师资格证报名地点,教师资格证报名的时间,教师资格证报名带什么,教师资格证报名,教师资格证报考网站,教师资格证报考网,教师资格证报考条件,教师资格证报考试时间,教师资格证报,教师资格证版本,教师资格证报考条件,教师资格证,教师教师资格证考试,教师教师资格证,教教师资格证考试时间,国考教师资格证报名条件,国考教师资格证报名时间,国考教师资格证报名,国考教师资格证报考条件,国家教师资格证认定网,高校教师资格证报名条件,高级教师资格证报考条件,初级教师资格证考试,北京教师资格证审核,报名教师资格证要求,报名教师资格证条件,报考教师资格证资格,报考教师资格证要求,报考教师资格证条件,报教师资格证,2018年教师资格证报名入口,2018教师资格证下半年报名时间,2018教师资格证下半年,2018教师资格证什么时候报名,2018教师资格证报名官网,做营养师好吗,做营养师的条件,注册营养师怎么样,注册营养师考试,注册营养师2018,注册考营养师高级营养师,注册国际营养师,注册高级营养师,中级营养师难考吗,中级营养师,中国注册营养师,怎样学营养师,怎样考营养师资格证,怎样考二级营养师,怎么样考营养师,怎么学营养师,怎么考营养师资格证,怎么考营养师管理师,怎么考营养师,怎么考取营养师,怎么报名营养师,怎么报考国家营养师,有关营养师的证书,营养师资格证有用吗,营养师资格证书,营养师注册,营养师中级,营养师证怎样考,营养师证怎么考,营养师证有用吗,营养师证有什么用,营养师证有几种,营养师证什么时候考,营养师证考试条件,营养师证好考吗,营养师证等级,营养师证报名条件,营养师证,营养师这个职业怎么样,营养师怎么学习,营养师怎么学,营养师怎么考,营养师怎么工作,营养师怎么报名学习,营养师怎么报名,营养师有没有用,营养师有,营养师一级培训,营养师一级管理师,营养师学习,营养师学慧网,营养师学费多少,营养师需要条件,营养师需要具备哪些条件,营养师条件,营养师收入,营养师时间,营养师什么时候考试,营养师什么时候考,营养师申报条件,营养师如何考取,营养师如何考,营养师如何报名,营养师普为,营养师难考吗,营养师哪里学,营养师论文,营养师考试营养师考试时间,营养师考试要求,营养师考试条件,营养师考试时间,营养师考试什么时候,营养师考试,营养师具体做什么,营养师具体是做什么的,营养师健康管理师,营养师基础,营养师好考不,营养师行业,营养师国家,营养师管理师怎么样,营养师管理师有用吗,营养师管理师费用,营养师管理师等级,营养师管理师,营养师管理好吗,营养师公共营养师,营养师高师,营养师高级证书,营养师高级,营养师分几级,营养师分几个级别,营养师二级,营养师等级,营养师的证怎么考,营养师的证有用吗,营养师的报名条件,营养师的报名,营养师的报考资格,营养师报名网,营养师报名条件,营养师报名,营养师报,营养师,学营养师的条件,学习营养师,学慧网营养师,想学营养师,想考营养师,想考个营养师,我想学营养师,我想考营养师,我考营养师,网上报名营养师,网上报考营养师,如何做营养师,如何学营养师,如何考营养师资格证,如何考营养师管理师,如何考营养师,如何考取营养师,如何考高级营养师证,如何成为营养师,如何才能考营养师,全国营养师资格证,全国营养师考试,全国营养师,请营养师,哪里学营养师,哪里需要营养师,哪里可以考营养师,考营养师证有用吗,考营养师有什么用,考营养师要什么条件,考营养师需要什么条件,考营养师需要什么,考营养师需要哪些条件,考营养师条件,考营养师管理师有用吗,考营养师的条件,考营养师,考取营养师,健康营养师资格证,好的营养师培训,国家注册营养师考试,国家中级营养师怎么考,国家中级营养师,国家营养师资格证书,国家营养师资格证,国家营养师资格考试,国家营养师证,国家营养师怎么考,国家营养师考试网,国家营养师考试条件,国家营养师考试时间,国家营养师考试,国家营养师,国家一级营养师证,国家一级营养师,国家高级营养师,国家二级营养师考试,国际注册营养师考试,国际注册营养师,国际营养师证,国际营养师,关于营养师考试,公共营养师考试条件,高级营养师资格证,高级营养师证怎么考,高级营养师证,高级营养师培训,高级营养师管理师有用吗,高级营养师报名条件,高级营养师报名,高级营养师报考,高级营养师,二级营养师,的营养师,初级营养师,保健营养师国际营养师,aci国际营养师,2018营养师,2018年营养师,自学物业管理,注册物业管理师证书,质量管理员证书,找物业管理公司,怎么办物业经理证书,扬州物业管理员证书,徐州物业管理经理上岗证,物业项目经理证书,物业项目负责人证书,物业人力资源管理,物业企业经理证书怎么考,物业企业经理证书,物业企业经理人证书,物业经理证书怎么考,物业经理证书有用吗,物业经理证书样本,物业经理证书如何考取,物业经理证书报考,物业经理需要什么证书,物业经理上岗证书,物业经理人资格证书,物业经理人上岗证书,物业经理人岗位证书,物业经理岗位证书报考,物业经理岗位证书,物业管理专业人员职业资格证书,物业管理员资格证书,物业管理员资格证,物业管理员证书,物业管理员上岗证书,物业管理员工作内容,物业管理员工作服,物业管理员工作,物业管理员报名条件,物业管理项目经理资格证,物业管理项目经理证书,物业管理特约服务,物业管理人员资格证书,物业管理人员证书,物业管理人力资源,物业管理企业经理证书,物业管理企业经理上岗证书,物业管理企业经理上岗证培训班,物业管理企业经理上岗证培训,物业管理企业经理上岗证考试,物业管理企业经理上岗证,物业管理经理资格证书,物业管理经理资格证,物业管理经理上岗证书,物业管理经理上岗证培训,物业管理经理上岗证,物业管理公司级别,物业管理公司查询,物业管理岗位证书,物业管理服务等级标准,物业管理部门经理证,物业管理部门经理上岗证,物业岗位经理证书,物业服务与管理,物业部门经理证书,物业安全管理的主要内容,苏州物业管理师挂靠,上海物业经理岗位证书,上海物业管理员证书,上海物业管理员上岗证培训,上海物业管理企业经理上岗证,上海物业管理经理人上岗证,全国物业管理企业经理证书,全国物业管理企业经理上岗证,全国物业管理经理资格证书,宁波物业管理经理证,宁波物业管理经理上岗证,考物业经理证书,建设部物业经理岗位证书,建设部物业管理经理上岗证,淮安物业管理证书,杭州物业管理员证书,杭州物业管理经理证,广东省物业管理行业协会,成都物业管理协会官网,常州物业管理员上岗证,常州物业管理经理上岗证,做心理咨询师,最好的心理咨询师培训班,咨询心理咨询师,专业心理咨询师,专业的心理咨询师,著名的心理咨询师,中山心理咨询师,中级心理咨询师,中级心理治疗师,中国国家心理咨询师,知名心理咨询师,知名的心理咨询师,正规心理咨询师培训机构,正规心理咨询师,找心理咨询师有用吗,怎样找心理咨询师,怎样成为心理咨询师,怎样才能成为一个心理咨询师,怎么样成为心理咨询师,怎么选择心理咨询师培训机构,怎么考心理咨询师证,怎么当心理咨询师,怎么才能当心理咨询师,在线心理咨询师免费,在线心理咨询师,在线心里医生咨询师,在哪里考心理咨询师,有心理咨询师吗,有名心理咨询师,一级心理咨询师条件,一级心理咨询师培训班,一级心理咨询师,心理咨询咨询师,心理咨询师做什么,心理咨询师最高几级,心理咨询师资格证怎么考,心理咨询师资格证考试,心理咨询师资格证报考条件,心理咨询师资格证,心理咨询师资格考试报名条件,心理咨询师咨询,心理咨询师著名,心理咨询师中心,心理咨询师中山,心理咨询师指导,心理咨询师直接考二级,心理咨询师证怎样报名,心理咨询师证怎么考,心理咨询师证有用,心理咨询师证有效期,心理咨询师证什么时候考,心理咨询师证考试时间,心理咨询师证报名,心理咨询师证,心理咨询师怎样,心理咨询师怎么考,心理咨询师在线咨询,心理咨询师在线,心理咨询师在哪里找,心理咨询师有哪些人,心理咨询师有几级,心理咨询师有,心理咨询师应具备的条件,心理咨询师一级报名条件,心理咨询师一级报名,心理咨询师一级,心理咨询师一般什么时候报名,心理咨询师一般多少钱,心理咨询师要考什么,心理咨询师学习网,心理咨询师学习,心理咨询师学会,心理咨询师需要考什么证,心理咨询师信息,心理咨询师心理医生,心理咨询师网站,心理咨询师网上咨询,心理咨询师网上报名系统,心理咨询师网上报名,心理咨询师网上,心理咨询师网,心理咨询师推荐,心理咨询师室,心理咨询师是做什么的,心理咨询师师报考条件,心理咨询师师,心理咨询师什么,心理咨询师三级考几门,心理咨询师全国,心理咨询师去哪考,心理咨询师培训班哪个好,心理咨询师培训班费用,心理咨询师排名,心理咨询师那里有,心理咨询师哪里找,心理咨询师哪里的好,心理咨询师哪好,心理咨询师免费咨询,心理咨询师免费,心理咨询师论坛,心理咨询师流程,心理咨询师可以做什么,心理咨询师可以自己考吗,心理咨询师考试咨询,心理咨询师考试怎么报名,心理咨询师考试条件,心理咨询师考试什么时候报名,心理咨询师考试入口,心理咨询师考试日期,心理咨询师考试难吗,心理咨询师考试难不难,心理咨询师考试级别,心理咨询师考试机构,心理咨询师考试官网,心理咨询师考试费用,心理咨询师考试费,心理咨询师考试答案,心理咨询师考试报名条件,心理咨询师考试班,心理咨询师考什么,心理咨询师考哪些科目,心理咨询师级别,心理咨询师基础,心理咨询师湖南,心理咨询师河南,心理咨询师河北,心理咨询师和心理医生,心理咨询师好考吗,心理咨询师好,心理咨询师过关率,心理咨询师国家考试,心理咨询师官网,心理咨询师分为几级,心理咨询师分类,心理咨询师分几级,心理咨询师二级资格证,心理咨询师二级正规培训,心理咨询师二级条件,心理咨询师二级视频,心理咨询师二级培训机构,心理咨询师二级理论,心理咨询师二级考试时间,心理咨询师二级考试科目,心理咨询师二级考试报名,心理咨询师二级考试,心理咨询师二级考几门,心理咨询师二级价格,心理咨询师二级代报名,心理咨询师二级答案,心理咨询师二级报名条件,心理咨询师二级报名,心理咨询师二级,心理咨询师都考什么,心理咨询师等级,心理咨询师的资格证,心理咨询师的资格,心理咨询师的条件,心理咨询师的考试条件,心理咨询师的级别,心理咨询师的工作内容,心理咨询师的等级,心理咨询师的,心理咨询师成绩查询网,心理咨询师成绩查询时间,心理咨询师查询成绩,心理咨询师报名哪家好,心理咨询师报,心理咨询师2018考试时间,心理咨询师2018,心理咨询师2016,心理咨询师2015,心理咨询师1级,心理咨询师,心理咨询,心理咨师,心理治疗治疗师,心理治疗师网,心理治疗师培训班,心理治疗师考试培训,心理治疗师和心理医生,心理治疗师二级,心理治疗师报名时间,心理在线咨询师,心理医生咨询师,心理医生与心理咨询师,心理一级咨询师,心理学咨询师怎么考,心理学咨询师怎么报名,心理心理咨询师,心理师在线咨询,心理免费咨询师,心理健康师,心理初级咨询师考试咨询,心里咨询师在线咨询,心里咨询师是什么,想考心理咨询师证,想看心理咨询师,我想找心理咨询师,网心理咨询师,网上咨询心理师,网上找心理咨询师,网上心理咨询专家,网上心理咨询师,网上免费心理咨询师,网上的心理咨询师,市心理咨询师,上海心理治疗师,上海市心理咨询师,如何做一名心理咨询师,如何成为一名心理咨询师,如何成为心理咨询师,全国知名心理咨询师,全国二级心理咨询师有用吗,权威心理咨询师,去哪里找心理咨询师,情感心理咨询师在线,那有心理咨询师,哪心理咨询师好,哪里能考心理咨询师证,哪里可以找心理咨询师,免费在线心理咨询师,免费心理咨询师在线咨询,免费心理咨询师在线,免费的心理咨询师,零基础心理咨询师,考心理咨询师有什么条件,考心理咨询师要多少钱,考心理咨询师哪家好,考心理咨询师费用,考心理咨询师二级,考心理咨询师的条件,济南市心理咨询师,湖南心理咨询师,河北心理咨询师,好的心理咨询师,国内有名的心理咨询师,国家注册二级心理咨询师,国家职业心理咨询师培训,国家一级心理咨询师,国家心理咨询师怎么考,国家心理咨询师条件,国家心理咨询师级别,国家心理咨询师机构,国家心理咨询师官网,国家心理咨询师二级,国家心理咨询师报名费用,国家心理咨询师吧,国家心理咨询师,国家心理治疗师,国家心理辅导师,国家级心理咨询师考试,国家高级心理咨询师,国家二级心理咨询师真题,国家二级心理咨询师培训机构,国家二级心理咨询师考试,国家二级心理咨询师查询,国家二级心理咨询师报考条件,国际心理咨询师怎么考,国际心理咨询师,广东省心理咨询师,高级心理咨询师,二级心理咨询师考试科目,二级心理咨询师考试报名条件,二级心理咨询师考试,二级心理咨询师机构,二级心理咨询师个人成长报告,二级心理咨询师成长报告,二级心理咨询师报名条件,二级心理咨询师案例分析,二级心理咨询师,儿童心理咨询师怎么考,的心理咨询师,从事心理咨询师,初级心理咨询师考试,比较好的心理咨询师,安徽省心理咨询师,2018心理咨询师证考试,2018心理咨询师新政策,2018心理咨询师,2018年心理咨询师证,2018年心理咨询师,2018年下半年心理咨询师报名时间,2018年还有心理咨询师考试吗,2018国家心理咨询师,2016心理咨询师,2016年心理咨询师,2016国家心理咨询师,2015心理咨询师,2015年心理咨询师,2015国家心理咨询师,注册一级消防师报考条件,注册一级消防工程师报名时间,注册消防师资格证,注册消防师证书,注册消防师证,注册消防师报名费用,注册消防工程师资格考试时间,注册消防工程师资格考试,注册消防工程师证书有什么用,注册消防工程师证好考吗,注册消防工程师一级证,注册消防工程师学习资料,注册消防工程师网上课程,注册消防工程师网课,注册消防工程师考试日期,注册消防工程师考试免试条件,注册消防工程师报名时间广西省,注册二级消防师报考条件,浙江一级注册消防师报考条件,怎样报考消防工程师证,怎么报考消防工程师证,一级注册消防师证,一级注册消防师报名条件,一级注册消防师报考条件,一级注册消防工程师资格证书,一级注册消防工程师网课,一级注册消防工程师的报名时间,一级注册消防工程师报名时间,一级消防注册师报名条件,一级消防注册师报考条件,一级消防注册工程师报名时间,一级消防证书报考条件,一级消防证书,一级消防师证怎么考,一级消防师证报考条件,一级消防师证,一级消防工程师资格考试,一级消防工程师证有什么用,一级消防工程师证考试条件,一级消防工程师证好考吗,一级消防工程师证报名条件,一级消防工程师证报考条件,一级消防工程师证报考,一级消防工程师免考条件,消防证中级报考条件,消防证书在哪里报名,消防证书有几级,消防证书报名条件,消防证书报考,消防证工程师报名条件,消防一级工程师证,消防师资格证报考条件,消防师资格证,消防师证怎么考,消防师证书,消防师证难考么,消防师证好考吗,消防师证报名资格,消防师证报名条件,消防师证报名时间,消防师证报名,消防师证报考要求,消防师证报考条件,消防师证,消防考证,消防工程证书怎么考,消防工程证书,消防工程师资格证书,消防工程师资格条件,消防工程师资格认证,消防工程师资格考试时间,消防工程师资格考试,消防工程师执业证书,消防工程师证值钱吗,消防工程师证怎么注册,消防工程师证怎么考,消防工程师证怎么报考,消防工程师证有用么,消防工程师证有什么用,消防工程师证有哪些,消防工程师证网上报名,消防工程师证条件,消防工程师证书有用吗,消防工程师证书是什么,消防工程师证书考几门,消防工程师证书好考吗,消防工程师证书好不好,消防工程师证书报考条件,消防工程师证书,消防工程师证是什么,消防工程师证试题,消防工程师证什么时候考试,消防工程师证如何考,消防工程师证培训机构,消防工程师证难考吗,消防工程师证考试条件,消防工程师证考试内容,消防工程师证考试,消防工程师证好考吗,消防工程师证都考什么内容,消防工程师证报名条件,消防工程师证报名时间,消防工程师证报名,消防工程师证报考条件,消防工程师证报考时间,消防工程师证报考,消防工程师证,消防工程师考试题,消防工程师考试好考吗,消防工程师考试好过吗,消防工程师报名资格不够,消防工程师报名资格,消防工程师报名需要什么条件,消防工程师报考资格,天津一级注册消防师报考条件,苏州二级消防师报名条件,苏州二级消防工程师报考条件,深圳消防工程师报名,上海二级消防师报名条件,山西注册消防工程师考试时间,山西省注册消防师报名条件,如何报考消防工程师证书,如何报考消防工程师证,考注册消防师什么条件,考消防证书,考消防师证,考消防工程师证条件,考消防工程师证书,考消防工程师证容易吗,江苏注册消防师报考条件,江苏消防师证报考条件,江苏消防师证,河南注册消防师报名条件,河北注册消防师报名条件,河北注册消防师报考时间,广西省注册消防师报名时间,广东消防工程师证报考条件,高级消防证书,福建注册消防师报考时间,二级注册消防师报名,二级注册消防师报考条件,二级消防师证报考条件,二级消防师报名条件,二级消防工程师资格证,二级消防工程师证书考试时间,二级消防工程师证书考试培训,二级消防工程师考试好吗,二级消防工程师考试好过么,二级消防工程师考试好过吗,二级消防工程师考试好,二级消防工程师报名资格,二级消防工程师报名条件广东省,二级消防工程师报考资格,二级级消防师报考条件,北京市一级消防工程师证书,报考注册消防师需要什么条件,报考一级消防工程师证,报考消防工程师资格,报考消防工程师证书,2016年消防工程师证书考试,重庆人力资源资格证报名,怎么考人力资源证书,怎么报考人力资源资格证,有关人力资源的证书,一级人力资源管理证书,想考人力资源证书,天津市人力资源证书,深圳人力资源证书,上海市人力资源证书,上海人力资源证书,上海人力资源三级证书,如何考人力资源证书,人力资源资格证书有用吗,人力资源资格证书考试,人力资源资格证书二级,人力资源资格证书,人力资源职业资格证书,人力资源职称证书,人力资源证书怎么考,人力资源证书怎么报考,人力资源证书有哪些,人力资源证书有几级,人力资源证书四级,人力资源证书三级,人力资源证书培训机构,人力资源证书考试条件,人力资源证书考试时间,人力资源证书考试报名条件,人力资源证书考试报名时间,人力资源证书考试,人力资源证书考什么,人力资源证书分几级,人力资源证书二级,人力资源证书等级,人力资源证书初级,人力资源证书补贴,人力资源证书报名条件,人力资源证书报名时间,人力资源证书报名费,人力资源证书报名,人力资源证书报考条件,人力资源证书报考时间,人力资源证书办理,人力资源证书,人力资源证的条件,人力资源证报考网站,人力资源证3级,人力资源证,人力资源有哪些证书,人力资源需要什么证书,人力资源相关证书,人力资源相关的证书,人力资源三级证书报考条件,人力资源三级证书,人力资源认证考试,人力资源认证,人力资源类证书,人力资源考试认证,人力资源管理资格证书,人力资源管理职业资格证书,人力资源管理职业证书,人力资源管理证书什么时候考,人力资源管理证书考试,人力资源管理证书报名,人力资源管理证书报考条件,人力资源管理证书报考,人力资源管理证书,人力资源管理员证书,人力资源管理师证书有什么用,人力资源管理师证书报名,人力资源管理师证书报考条件,人力资源管理师证书,人力资源管理从业资格证书,人力资源管理初级证书,人力资源管理3级证书,人力资源岗位证书,人力资源方面证书,人力资源方面的证书,人力资源二级证书报名,人力资源二级证书报考条件,人力资源二级证书,人力资源都有什么证书,人力资源等级证,人力资源的相关证书,人力资源从业资格证书报考条件,人力资源从业资格证书报考,人力资源从业资格证书,人力资源从业证书,人力资源初级证书,人力资源部颁发的证书,人力资源3级证书,人力资源2级证书,人力证书,全国人力资源资格证考试,全国人力资源证,企业人力资源证书,企业人力资源管理证书,企业人力资源管理师资格证书,考人力资源资格证书,考人力资源证书,考人力资源二级证书有用么,考取人力资源证书,国家人力资源证书,广州人力资源证书,高级人力资源证,二级人力资源证书报考条件,初级人力资源资格证,北京人力资源证书考试,北京人力资源证书,报考人力资源证书,报考人力资源证,3级人力资源证,2018人力资源证书,2018人力资源二级证书报考条件";
			String[] keyWordArray1 = keyWordArray.split(",");
			for (String keyWord : keyWordArray1) {
				System.out.println(DateUtil.getDate(new Date(), "yyyy-MM-dd HH:mm:ss"));
				Thread.sleep(500); //设置暂停的时间 500 毫秒
				String url = ClientUtil.get("https://www.baidu.com/s?ie=utf-8&wd=" + keyWord, true, "utf-8");

				Document doc = Jsoup.parse(url);
				Element rows = doc.select("div[id=content_left]").get(0);

				int i = 0;
				for (Element row : rows.select("div[id~=\\d]")) {
					Element a = row.select("a").get(0);
					if (StringUtils.isBlank(a.text())) {
						continue;
					}
					i += 1;//第几个
					System.out.println("第" + i + "个");//标题
					Advertise advertise = new Advertise();
					advertise.setKeyWord(keyWord);
					if (row.select(".ec_tuiguang_ppimlink").size() > 0 || row.select(".ec_tuiguang_ppouter").size() > 0) {
						System.out.print("推广  ");//是否推广
						advertise.setAdvertiseType("推广");
					} else {
						advertise.setAdvertiseType("非推广");
					}
					System.out.println(" 百度的url:" + a.attr("href"));//百度的url
					advertise.setBaiduUrl(a.attr("href"));
					System.out.println("标题:" + a.text());//标题
					advertise.setAdvertiseTitle(a.text());

					String regex1 = "[a-zA-z0-9-]+[.][a-zA-z0-9-]+[.][a-z]+[.][a-z]+";
					String regex = "[a-zA-z0-9-]+[.][a-zA-z0-9-]+[.][a-z]+";
					Pattern pattern = Pattern.compile(regex1);
					Matcher m = pattern.matcher(row.text());
					if (m.find()) {
						System.out.println("url:" + m.group());//本身的网址
						advertise.setCompanyUrl(m.group());
					} else {
						Pattern pattern2 = Pattern.compile(regex);
						Matcher m2 = pattern2.matcher(row.text());
						if (m2.find()) {
							System.out.println("url:" + m2.group());//本身的网址
							advertise.setCompanyUrl(m2.group());
						}
					}
					//查询页面编码格式，方式抓取网页信息时乱码
					String charset = getEncodingByContentStream(a.attr("href"));
					System.out.println("编码====================================:" + charset);
					//进一步解析网址中的内容，获取所需的电话或者公司名称
					String url1 = StringUtils.deleteWhitespace(ClientUtil.get(a.attr("href"), true, charset));
					System.out.println("HTML页面====================================:" + url1);
					if (url1 != null) {
						//1、找有限公司，取最后一个
						//找联系我们 或者 关于我们 或者
						Document docWeb = Jsoup.parse(url1);
						//第一层查找公司名称
						Elements elements = docWeb.getElementsContainingText("有限公司");
						String companyName = "";
						String mobilePhone = "";
						String phone = "";
						if (elements.size() > 0) {
							companyName = elements.get(elements.size() - 1).text();
							advertise.setCompanyName(companyName);
						}
						//查找座机号
						phone = checkTelephone(url1);
						if (phone != null && phone != "") {
							advertise.setTelePhone(phone);
						}
						//查找手机号
						mobilePhone = checkCellphone(url1);
						if (mobilePhone != null && mobilePhone != "") {
							advertise.setCellPhone(mobilePhone);
						}
						System.out.println("第一层页面最后一个公司名称:" + companyName);
						System.out.println("第一层页面手机号:" + mobilePhone);
						System.out.println("第一层页面座机号:" + phone);
						if (companyName == "" || mobilePhone == null || phone == null) {
							//接着进行深层次抓取，通过联系我们或关于我们来查找公司名称和手机号
							elements = docWeb.getElementsContainingText("联系我们");
							String companyName2 = "";
							if (elements.size() > 0) {
								System.out.println("进入第二层=====================寻找联系我们");
								companyName2 = elements.get(elements.size() - 1).text();
								String regexPhone = "(.*)(<a)(.*)(联系我们)(.*)";
								Pattern patternPhone = Pattern.compile(regexPhone);
								Matcher matcherPhone = patternPhone.matcher(url1);
								boolean b = matcherPhone.matches();
								if (b) {
									*//*System.out.println("联系我们页面中的==== aaaaaa:"+matcherPhone.group(3));*//*
									regexPhone = "(.*)(href=\")(.*)(shtml)(\")(.*)";
									patternPhone = Pattern.compile(regexPhone);
									matcherPhone = patternPhone.matcher(matcherPhone.group(3));
									if (matcherPhone.matches()) {
										String aTab = matcherPhone.group(3) + "shtml";
										System.out.println("联系我们页面的a链接:" + aTab);
										//获取联系我们的a链接后
										//查询页面编码格式，方式抓取网页信息时乱码
										String charsetDouble = getEncodingByContentStream(aTab);
										System.out.println("通过联系我们找到的第二层页面的编码====================================:" + charset);
										String aLink = ClientUtil.get(aTab, true, charsetDouble);

										//如果第一层页面找到了公司名称，对于深层页面就无需再找
										if (companyName == null || companyName == "") {
											Document docLink = Jsoup.parse(aLink);
											elements = docLink.getElementsContainingText("有限公司");
											if (elements.size() > 0) {
												companyName = elements.get(elements.size() - 1).text();
												advertise.setCompanyName(companyName);
											}
											System.out.println("第二层页面======联系我们====获取的公司名称:" + companyName);
										}
										System.out.println("======================联系我们=====第二层页面============================:" + aLink);
										//判断是否已找到手机号
										if (mobilePhone == null || mobilePhone == "") {
											//手机号
											String cellPhone = checkCellphone(aLink);
											if (cellPhone != null) {
												advertise.setCellPhone(cellPhone);
											}
											System.out.println("第二层页面======联系我们====手机号:" + cellPhone);

										}
										//判断是否已找到座机号
										if (phone == null || phone == "") {
											//固定电话
											String telePhone = checkTelephone(aLink);
											if (telePhone != null) {
												advertise.setTelePhone(telePhone);
											}
											System.out.println("第二层页面======联系我们====固定电话:" + telePhone);
										}
										System.out.println("------------------第2222222222222222层结束--------------------------");
									}
								}
							}
						}

						*//*如果没有找到公司名称并且联系我们也没有，就查找关于我们*//*
						if (companyName == "" || mobilePhone == null || phone == null) {
							Elements elementsAbout = docWeb.getElementsContainingText("关于我们");
							String companyNameAbout = "";
							if (elementsAbout.size() > 0) {
								System.out.println("进入第二层=====================寻找关于我们");
								companyNameAbout = elementsAbout.get(elementsAbout.size() - 1).text();
								String regexPhone = "(.*)(<a)(.*)(关于我们)(.*)";
								Pattern patternPhone = Pattern.compile(regexPhone);
								Matcher matcherPhone = patternPhone.matcher(url1);
								boolean b = matcherPhone.matches();
								if (b) {
									*//*System.out.println("关于我们的==== aaaaaaa:"+matcherPhone.group(3));*//*
	 *//*patternPhone = Pattern.compile("(.*)(href=\")(.*)(\"target)(.*)");*//*
									patternPhone = Pattern.compile("(.*)(href=\")(.*)(/\")(.*)");
									matcherPhone = patternPhone.matcher(matcherPhone.group(3));
									b = matcherPhone.matches();
									if (b) {
										System.out.println("关于我们页面的a链接:" + matcherPhone.group(3));
										String charsetDouble = getEncodingByContentStream(matcherPhone.group(3));
										System.out.println("通过关于我们找到的第二层页面的编码====================================:" + charset);
										try {
											String aLink = ClientUtil.get(matcherPhone.group(3), true, charsetDouble);
											Document docLink = Jsoup.parse(aLink);

											System.out.println("======================关于我们=====第二层页面============================:" + aLink);
											//如果第一层页面找到了公司名称，对于深层页面就无需再找
											if (companyName == null || companyName == "") {
												elements = docLink.getElementsContainingText("有限公司");
												if (elements.size() > 0) {
													companyName = elements.get(elements.size() - 1).text();
													advertise.setCompanyName(companyName);
												}
												System.out.println("第二层页面======关于我们====获取的公司名称:" + companyName);
											}
											//判断是否已找到手机号
											if (mobilePhone == null || mobilePhone == "") {
												//手机号
												String cellPhone = checkCellphone(aLink);
												if (cellPhone != null) {
													advertise.setCellPhone(cellPhone);
												}
												System.out.println("第二层页面======关于我们====手机号:" + cellPhone);

											}
											//判断是否已找到座机号
											if (phone == null || phone == "") {
												//固定电话
												String telePhone = checkTelephone(aLink);
												if (telePhone != null) {
													advertise.setTelePhone(telePhone);
												}
												System.out.println("第二层页面======关于我们====固定电话:" + telePhone);
											}
											System.out.println("------------------第2222222222222222层结束--------------------------");
										} catch (Exception e) {
											e.printStackTrace();
										}

									}
								}
							}
						}
						try {
							crmAdvertiseServiceImpl.insert(advertise);
						} catch (Exception e) {
							e.printStackTrace();
						}

					}
					System.out.println("------------------第一层结束--------------------------");

				}

			}


		} catch (Exception e) {
			e.printStackTrace();
		}

		return "ok";
	}*/

	/*@RequestMapping(value = "/exportChanceLevelList")
	public ModelAndView exportAdvertiselList(Model model, ChanceVo chance) {
		ViewFiles excel = new ViewFiles();
		HSSFWorkbook wb = this.crmAdvertiseServiceImpl.exportStaticChanceLevel();
		Map map = new HashMap();
		map.put("workbook", wb);
		map.put("fileName", "百度资源信息统计.xls");
		return new ModelAndView(excel, map);
	}*/

	public static void main(String args[]) {
		get("https://www.baidu.com", true, "utf-8");
	}
}